package br.gov.mi.corporativo.dominio.boundary.rhmi.unidadeestruturatelefone;

import java.util.List;

import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.context.support.SpringBeanAutowiringSupport;

import br.gov.mi.corporativo.dominio.entidade.rhmi.UnidadeEstruturaTelefone;


@Path("unidadesEstruturaTelefone")
public class UnidadeEstruturaTelefoneRestAdapter extends SpringBeanAutowiringSupport {
	
	@Autowired
	private UnidadeEstruturaTelefoneEndPoint service;
	
	
	@GET
	@Produces({MediaType.APPLICATION_JSON})
	public Iterable<UnidadeEstruturaTelefone> recuperarTodos(){
		return service.recuperarTodos();
	}
	
	@GET
	@Path("/id/{id}")
	@Produces({MediaType.APPLICATION_JSON})
	public UnidadeEstruturaTelefone recuperarPorId(@PathParam("id")Long id){
		return service.recuperarPorId(id);
	}
	
	
	@GET
	@Path("/telefone/{telefone}")
	@Produces({MediaType.APPLICATION_JSON})
	public UnidadeEstruturaTelefone recuperarPorTelefone(@PathParam("telefone")String telefone) {
		return service.recuperarPorTelefone(telefone);
	}


	@GET
	@Path("/ddd/{ddd}")
	@Produces({MediaType.APPLICATION_JSON})
	public List<UnidadeEstruturaTelefone> recuperarPorDdd(@PathParam("ddd")Long ddd) {
		return service.recuperarPorDdd(ddd);
	}


	@GET
	@Path("/ramal/{ramal}")
	@Produces({MediaType.APPLICATION_JSON})
	public List<UnidadeEstruturaTelefone> recuperarPorRamal(@PathParam("ramal")Long ramal) {
		return service.recuperarPorRamal(ramal);
	}


	@GET
	@Path("/status/{status}")
	@Produces({MediaType.APPLICATION_JSON})
	public List<UnidadeEstruturaTelefone> recuperarPorStatus(@PathParam("status")String status) {
		return service.recuperarPorStatus(status);
	}

}
